User authentication tokens are typically implemented as small, hand-held devices that display a series of passwords over time. These passwords, which may be one-time passwords, are more generally referred to herein as tokencodes. A user equipped with such an authentication token reads the currently displayed password and enters it into a computer or other element of an authentication system as part of an authentication operation. This type of dynamic password arrangement offers a significant security improvement over authentication based on a static password.
Conventional authentication tokens include both time-based tokens and event-based tokens. The latter are also referred to herein as event-triggered tokens. In a typical time-based token, the displayed passwords are based on a secret value and the time of day. A verifier with access to the secret value and a time of day clock can verify that a given presented password is valid. Event-based tokens generate passwords in response to a designated event, such as a user pressing a button on the token. Each time the button is pressed, a new password is generated based on a secret value and an event counter. A verifier with access to the secret value and the current event count can verify that a given presented password is valid.
Passwords can be communicated directly from the authentication token to a computer or other element of an authentication system, instead of being displayed to the user. For example, a wired connection such as a universal serial bus (USB) interface may be used for this purpose. Wireless authentication tokens are also known in such tokens, the passwords are wirelessly communicated to a computer or other element of an authentication system. These wired or wireless arrangements save the user the trouble of reading the password from the display and manually entering it into the computer.
Additional details of exemplary conventional authentication tokens can be found in, for example, U.S. Pat. No. 4,720,860, entitled “Method and Apparatus for Positively Identifying an Individual,” U.S. Pat. No. 5,168,520, entitled “Method and Apparatus for Personal Identification,” and U.S. Pat. No. 5,361,062, entitled “Personal Security System,” all of which are incorporated by reference herein.
It is generally desirable in authentication tokens and other hand-held devices to minimize power consumption so as to conserve battery power. To this end, a processor within a given such device may be kept in a low-power “sleep” mode when not being used to generate passwords. A problem that arises for a device of this type is that the device can be susceptible to inadvertent resets, for example, resets triggered by various external sources such as electrostatic discharge, electromagnetic interference, background radiation, etc. These and other inadvertent resets can take the processor out of its low-power sleep mode even when the processor does not need to generate passwords, thereby wasting battery power. Moreover, such resets can cause unpredictable behavior in both device hardware and firmware.
Accordingly, techniques are needed for reducing the susceptibility of authentication tokens and other authentication devices to inadvertent resets.